""""""
from .destiny.image import LoadImagesFromFolder, ImageInfo, DetectFace, SaveImages
from .destiny.tools import DisplayInfo, Constant, Translate, LabelCombine, CaptionAdd, CaptionGenerate
from .destiny.labels import LabelSceneIndoor
from .destiny.labels import LabelPersonUpAdorn, LabelPersonDownAdorn, LabelPersonFullAdorn, LabelPersonAction, LabelPersonQuality, LabelPersonHair, LabelPersonHeadAdorn, LabelPersonPose, LabelPersonType, LabelPersonEar, LabelPersonBreasts, LabelPersonNeck, LabelPersonClothing, LabelPersonFace, LabelPersonShoesSocks
from .destiny.labels import LabelRestrictedAdult


NODE_CLASS_MAPPINGS = {
    # image
    "LoadImagesFromFolder": LoadImagesFromFolder,
    "SaveImages": SaveImages,
    "ImageInfo": ImageInfo,
    "DetectFace": DetectFace,
    # tools
    "DisplayInfo": DisplayInfo,
    "Constant": Constant,
    "Translate": Translate,
    "CaptionAdd": CaptionAdd,
    "CaptionGenerate": CaptionGenerate,
    # labels
    "LabelCombine": LabelCombine,
    # -
    "LabelSceneIndoor": LabelSceneIndoor,
    # -
    "LabelPersonUpAdorn": LabelPersonUpAdorn,
    "LabelPersonDownAdorn": LabelPersonDownAdorn,
    "LabelPersonFullAdorn": LabelPersonFullAdorn,
    "LabelPersonAction": LabelPersonAction,
    "LabelPersonQuality": LabelPersonQuality,
    "LabelPersonHair": LabelPersonHair,
    "LabelPersonHeadAdorn": LabelPersonHeadAdorn,
    "LabelPersonPose": LabelPersonPose,
    "LabelPersonType": LabelPersonType,
    "LabelPersonEar": LabelPersonEar,
    "LabelPersonBreasts": LabelPersonBreasts,
    "LabelPersonNeck": LabelPersonNeck,
    "LabelPersonClothing": LabelPersonClothing,
    "LabelPersonFace": LabelPersonFace,
    "LabelPersonShoesSocks": LabelPersonShoesSocks,
    # -
    "LabelRestrictedAdult": LabelRestrictedAdult,
}

NODE_DISPLAY_NAME_MAPPINGS = {
    # image
    "LoadImagesFromFolder": "批量加载图像",
    "SaveImages": "批量保存图像",
    "ImageInfo": "获取图像信息",
    "DetectFace": "面部检测",
    # tools
    "DisplayInfo": "展示信息",
    "Constant": "定义常量",
    "Translate": "文本翻译",
    "CaptionAdd": "添加说明文字",
    "CaptionGenerate": "生成说明文字",
    # labels
    "LabelCombine": "整合标签",
    # -
    "LabelSceneIndoor": "室内[场景]",
    # -
    "LabelPersonUpAdorn": "上身装饰[人物]",
    "LabelPersonDownAdorn": "下身装饰[人物]",
    "LabelPersonFullAdorn": "全身装饰[人物]",
    "LabelPersonAction": "动作[人物]",
    "LabelPersonQuality": "品控[人物]",
    "LabelPersonHair": "头发[人物]",
    "LabelPersonHeadAdorn": "头部饰品[人物]",
    "LabelPersonPose": "姿势[人物]",
    "LabelPersonType": "类型[人物]",
    "LabelPersonEar": "耳朵[人物]",
    "LabelPersonBreasts": "胸部[人物]",
    "LabelPersonNeck": "脖子[人物]",
    "LabelPersonClothing": "衣装[人物]",
    "LabelPersonFace": "面部[人物]",
    "LabelPersonShoesSocks": "鞋袜[人物]",
    # -
    "LabelRestrictedAdult": "成年限定[限制级]",
}
